Getting Started
Front end
Implement a scripting language
- Lexical Analysis
- Token
- keyword
- if
- else
- for
- Identifier
- name
- age
- sum
- Operator
- =
- Symbol
- {
- (
- ;
- Literal
- 'hello world'
- 123
- keyword
- Token
- Syntactic Analysis / Parsing
- Abstract Syntax Tree (AST)
- tools
- Yacc
- Antlr
- Semantic Analysis
- Conversion of data type of expression calculation result
- Variables with the same name outside and inside the code block
- Unique variable name in the same scope
Back end
Generate executable files
- Generate intermediate code
- Optimization
- Generate target code